package com.feiyu.sys.service

import com.feiyu.sys.utils.PasswordUtils
import com.feiyu.sys.utils.SysSql
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.stereotype.Service

/**
 * Created by zdy on 2017/11/24.
 */
@Service
class LoginUserService {
    @Autowired
    SysSql sqlDb

    /**
     * 得到user列表
     * @return
     */
    List<LoginUser> getList() {
        String sql = "select * from login_user"
        return sqlDb.rows(sql)
    }



    /**
     * 添加用户
     * @param user
     * @return
     */
    Boolean addUser(LoginUser user) {
        //密码加密
        user.salt = PasswordUtils.getSalt()
        user.login_password = PasswordUtils.getMd5(user.login_password, user.salt)
        return sqlDb.execute("insert into login_user (login_name,login_password,salt) " +
                "values (?,?,?)", user.login_name, user.login_password, user.salt)
    }

    /**
     * 根据名称获得user
     * @param name
     * @return
     */
    LoginUser getUserByName(String name) {
        return sqlDb.firstRow("select * from login_user where login_name = ?", name)
    }

}


class LoginUser {
    /**
     * 用户ID
     */
    Long user_id
    /**
     * 用户账号
     */
    String login_name
    /**
     *用户密码
     */
    String login_password
    /**
     * 加密密码的盐
     */
    String salt

    LoginUser(String login_name, String login_password) {
        this.login_name = login_name
        this.login_password = login_password
    }

    LoginUser() {
    }
}

